{
  "nbformat": 4,
  "nbformat_minor": 0,
  "metadata": {
    "colab": {
      "name": "100ML_Day5-KNN.ipynb",
      "provenance": [],
      "authorship_tag": "ABX9TyNh6QnWUJHMtORKSZdkh3S3",
      "include_colab_link": true
    },
    "kernelspec": {
      "name": "python3",
      "display_name": "Python 3"
    }
  },
  "cells": [
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "view-in-github",
        "colab_type": "text"
      },
      "source": [
        "<a href=\"https://colab.research.google.com/github/Divyanshu-ISM/Machine-Learning-Deep-Learning/blob/main/100ML_Day5_KNN.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "wqkOUm2PAcar"
      },
      "source": [
        "# 100 ML Days : Day 5 : K-Nearest Neighbors"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "Y8_ET8u8AXPp"
      },
      "source": [
        "import numpy as np\r\n",
        "import pandas as pd\r\n",
        "import seaborn as sns\r\n",
        "import matplotlib.pyplot as plt"
      ],
      "execution_count": 1,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "P86UXcKUBRQ5"
      },
      "source": [
        "df = pd.read_csv('https://raw.githubusercontent.com/Divyanshu-ISM/100-Days-Of-ML-Code/master/datasets/Social_Network_Ads.csv')"
      ],
      "execution_count": 2,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 195
        },
        "id": "k9cx1SZPBhOM",
        "outputId": "867d5499-f3ba-4a03-9b9f-1256c1d9ec48"
      },
      "source": [
        "df.head()"
      ],
      "execution_count": 3,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>User ID</th>\n",
              "      <th>Gender</th>\n",
              "      <th>Age</th>\n",
              "      <th>EstimatedSalary</th>\n",
              "      <th>Purchased</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>15624510</td>\n",
              "      <td>Male</td>\n",
              "      <td>19</td>\n",
              "      <td>19000</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>15810944</td>\n",
              "      <td>Male</td>\n",
              "      <td>35</td>\n",
              "      <td>20000</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>15668575</td>\n",
              "      <td>Female</td>\n",
              "      <td>26</td>\n",
              "      <td>43000</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>15603246</td>\n",
              "      <td>Female</td>\n",
              "      <td>27</td>\n",
              "      <td>57000</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>15804002</td>\n",
              "      <td>Male</td>\n",
              "      <td>19</td>\n",
              "      <td>76000</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "    User ID  Gender  Age  EstimatedSalary  Purchased\n",
              "0  15624510    Male   19            19000          0\n",
              "1  15810944    Male   35            20000          0\n",
              "2  15668575  Female   26            43000          0\n",
              "3  15603246  Female   27            57000          0\n",
              "4  15804002    Male   19            76000          0"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 3
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "fby4FOasBif_",
        "outputId": "d63de0a4-0431-4347-e6bc-8724fbde54bb"
      },
      "source": [
        "len(df)"
      ],
      "execution_count": 4,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "400"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 4
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 195
        },
        "id": "n1pRRRG5BlCj",
        "outputId": "513f2b73-fa5c-449f-8887-f25e041d7168"
      },
      "source": [
        "df['Male'] = pd.get_dummies(df['Gender'],drop_first=True)\r\n",
        "\r\n",
        "df = df.drop('Gender',axis=1)\r\n",
        "\r\n",
        "df.head()"
      ],
      "execution_count": 6,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>User ID</th>\n",
              "      <th>Age</th>\n",
              "      <th>EstimatedSalary</th>\n",
              "      <th>Purchased</th>\n",
              "      <th>Male</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>15624510</td>\n",
              "      <td>19</td>\n",
              "      <td>19000</td>\n",
              "      <td>0</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>15810944</td>\n",
              "      <td>35</td>\n",
              "      <td>20000</td>\n",
              "      <td>0</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>15668575</td>\n",
              "      <td>26</td>\n",
              "      <td>43000</td>\n",
              "      <td>0</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>15603246</td>\n",
              "      <td>27</td>\n",
              "      <td>57000</td>\n",
              "      <td>0</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>15804002</td>\n",
              "      <td>19</td>\n",
              "      <td>76000</td>\n",
              "      <td>0</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "    User ID  Age  EstimatedSalary  Purchased  Male\n",
              "0  15624510   19            19000          0     1\n",
              "1  15810944   35            20000          0     1\n",
              "2  15668575   26            43000          0     0\n",
              "3  15603246   27            57000          0     0\n",
              "4  15804002   19            76000          0     1"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 6
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "8uly5sSBB2yf"
      },
      "source": [
        "df = df.drop('User ID',axis=1)"
      ],
      "execution_count": 7,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 195
        },
        "id": "3GnsaeMHCHxV",
        "outputId": "314bc35a-ab8d-4668-c0c5-e89c22083d81"
      },
      "source": [
        "df.head()"
      ],
      "execution_count": 8,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Age</th>\n",
              "      <th>EstimatedSalary</th>\n",
              "      <th>Purchased</th>\n",
              "      <th>Male</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>19</td>\n",
              "      <td>19000</td>\n",
              "      <td>0</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>35</td>\n",
              "      <td>20000</td>\n",
              "      <td>0</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>26</td>\n",
              "      <td>43000</td>\n",
              "      <td>0</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>27</td>\n",
              "      <td>57000</td>\n",
              "      <td>0</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>19</td>\n",
              "      <td>76000</td>\n",
              "      <td>0</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "   Age  EstimatedSalary  Purchased  Male\n",
              "0   19            19000          0     1\n",
              "1   35            20000          0     1\n",
              "2   26            43000          0     0\n",
              "3   27            57000          0     0\n",
              "4   19            76000          0     1"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 8
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "1sOzIoN5CI1s"
      },
      "source": [
        "X = df[['Age','EstimatedSalary','Male']].values\r\n",
        "y = df['Purchased'].values"
      ],
      "execution_count": 9,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "DlDEAspnCT_g"
      },
      "source": [
        "##Train Test split"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "9A0UTk0cCS-X"
      },
      "source": [
        "from sklearn.model_selection import train_test_split\r\n",
        "\r\n",
        "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=42)"
      ],
      "execution_count": 11,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "S8OC3MIED8QW"
      },
      "source": [
        "## Feature Scaling\r\n",
        "> Since KNN is a Distance based Algorithm"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "4PE0vWgDDy4s"
      },
      "source": [
        "from sklearn.preprocessing import StandardScaler"
      ],
      "execution_count": 12,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "SxpeXNqzEvky"
      },
      "source": [
        "scaler = StandardScaler()\r\n",
        "X_train_scaled = scaler.fit_transform(X_train)\r\n",
        "X_test_scaled = scaler.transform(X_test)"
      ],
      "execution_count": 13,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "MrrUhr-oE_Ub"
      },
      "source": [
        "## Fitting the KNN model."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "swrVx441E9SJ"
      },
      "source": [
        "from sklearn.neighbors import KNeighborsClassifier"
      ],
      "execution_count": 14,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "U3ECJC6-Fr15",
        "outputId": "ae405d71-1a2b-473a-d970-6e067038ae91"
      },
      "source": [
        "knn = KNeighborsClassifier()\r\n",
        "knn.fit(X_train_scaled,y_train)"
      ],
      "execution_count": 16,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "KNeighborsClassifier(algorithm='auto', leaf_size=30, metric='minkowski',\n",
              "                     metric_params=None, n_jobs=None, n_neighbors=5, p=2,\n",
              "                     weights='uniform')"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 16
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "VvjcYFPPG929"
      },
      "source": [
        "yp = knn.predict(X_test_scaled)"
      ],
      "execution_count": 42,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "dlvCc89aI0gA"
      },
      "source": [
        "## Model Evaluation"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "G36E4r1VIwlZ"
      },
      "source": [
        "from sklearn.metrics import confusion_matrix,accuracy_score"
      ],
      "execution_count": 18,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "1j3Qy680JOKn",
        "outputId": "153fcb12-85bf-4fd5-a115-a9bd6b83f80b"
      },
      "source": [
        "accuracy_score(y_test,yp)"
      ],
      "execution_count": 19,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "0.92"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 19
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 430
        },
        "id": "DWgoTMvpJSQ0",
        "outputId": "ff17bd7f-4f57-43b5-bd3c-d4c2741804dc"
      },
      "source": [
        "sns.heatmap(confusion_matrix(y_test,yp),annot=True,annot_kws={'size':50});"
      ],
      "execution_count": 43,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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\n",
            "text/plain": [
              "<Figure size 640x480 with 2 Axes>"
            ]
          },
          "metadata": {
            "tags": []
          }
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "z0htjp3hNrZP"
      },
      "source": [
        "## This model makes 8 incorrect classifications."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "BfdUzZT4KE3k"
      },
      "source": [
        "## Finding the best K value based on Accuracy score"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "hAnDet6yJY6R"
      },
      "source": [
        "ks = np.linspace(1,50,dtype='int64')"
      ],
      "execution_count": 31,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "5UTJJ75ULIU7"
      },
      "source": [
        "acc = []\r\n",
        "\r\n",
        "for k in ks:\r\n",
        "  kn = KNeighborsClassifier(n_neighbors=k)\r\n",
        "  kn.fit(X_train_scaled,y_train)\r\n",
        "  yp = kn.predict(X_test_scaled)\r\n",
        "  a = accuracy_score(y_test,yp)\r\n",
        "  acc.append(a)\r\n"
      ],
      "execution_count": 32,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 430
        },
        "id": "NbVEH9XwL4dp",
        "outputId": "9f0bfaec-6ab6-4e34-aa71-ee2ac25bd5e0"
      },
      "source": [
        "plt.style.use('default')\r\n",
        "plt.plot(ks,acc)\r\n",
        "plt.grid()"
      ],
      "execution_count": 33,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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\n",
            "text/plain": [
              "<Figure size 640x480 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": []
          }
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "zYuWjnBnMVh5"
      },
      "source": [
        "## So it is clear that MAX accuracy possible is 94% with k = 10"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "DQMqRaYFMCWp"
      },
      "source": [
        "bestk = KNeighborsClassifier(n_neighbors=10)\r\n",
        "bestk.fit(X_train_scaled,y_train)\r\n",
        "yp_best = bestk.predict(X_test_scaled)\r\n",
        "aca_best = accuracy_score(y_test,yp_best)"
      ],
      "execution_count": 38,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "i1owa0pgNOEL",
        "outputId": "80a16889-6945-427d-dbe8-e0997d73b400"
      },
      "source": [
        "aca_best"
      ],
      "execution_count": 39,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "0.94"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 39
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 430
        },
        "id": "LQ0NDPK2NP8d",
        "outputId": "8524ecb4-9666-457a-f5d7-9fb3940083ef"
      },
      "source": [
        "sns.heatmap(confusion_matrix(y_test,yp_best),annot=True,annot_kws={'size':50});"
      ],
      "execution_count": 40,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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\n",
            "text/plain": [
              "<Figure size 640x480 with 2 Axes>"
            ]
          },
          "metadata": {
            "tags": []
          }
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "AY-AopVTNxag"
      },
      "source": [
        "## This model  makes 6 incorrect classifications. 2 less than the previous model."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "yG1xqq2gNew9"
      },
      "source": [
        ""
      ],
      "execution_count": null,
      "outputs": []
    }
  ]
}